Testing of software and components is key to ensuring reliable functioning of programmable devices such as cellular telephones. During the process of designing and developing an embedded or programmable device, many tests are executed on the device with its embedded operating software to verify device characteristics, functionality, performance, security, error handling capability etc. After testing, the test data are typically of no further use. Ordinarily the compatibility of embedded and operating system software is confirmed by device testing of prototype units. Once proper operation of embedded software and operating system functions are confirmed for a new device, a software build may be released to the programmable device original equipment manufacturer (OEM) for inclusion in their products. At the same time the confirmed software build may be released to application developers so they can adapt old application to and write new applications for the soon-to-be-released new programmable device.
Application developers also need to test their applications on programmable devices before they are released commercially. Also applications may need to be certified for compatibility with the new programmable devices and the operating system by a certifying authority. However, production devices may not be available for use in such testing when the applications are finished. Therefore, application developers and certifying authorities often perform compatibility testing of applications using a simulator. Also, device simulator platforms provide better debugging and development tools than the devices themselves. Such simulators may operate on a standard computer that is configured with a simulation program to emulate the functionality of the programmable device. Simulators are typical general in structure with the specific device characteristics, settings and operating parameters provided as input values. Thus, to conduct a simulated test of a programmable device, the tester must enter an extensive list of parameter values and settings.